package export.js;

import js.Syntax;
// paste imports from /js_imports.txt
import oimo.collision.broadphase.BroadPhase;
import oimo.collision.geometry.Geometry;
import oimo.collision.geometry.ConvexGeometry;
import oimo.collision.broadphase.BroadPhaseProxyCallback;
import oimo.collision.broadphase.BroadPhaseType;
import oimo.collision.broadphase.Proxy;
import oimo.collision.broadphase.ProxyPair;
import oimo.collision.broadphase.bruteforce.BruteForceBroadPhase;
import oimo.collision.broadphase.bvh.BvhBroadPhase;
import oimo.collision.broadphase.bvh.BvhInsertionStrategy;
import oimo.collision.broadphase.bvh.BvhNode;
import oimo.collision.broadphase.bvh.BvhProxy;
import oimo.collision.broadphase.bvh.BvhStrategy;
import oimo.collision.broadphase.bvh.BvhTree;
import oimo.collision.geometry.Aabb;
import oimo.collision.geometry.BoxGeometry;
import oimo.collision.geometry.CapsuleGeometry;
import oimo.collision.geometry.ConeGeometry;
import oimo.collision.geometry.ConvexHullGeometry;
import oimo.collision.geometry.CylinderGeometry;
import oimo.collision.geometry.GeometryType;
import oimo.collision.geometry.RayCastHit;
import oimo.collision.geometry.SphereGeometry;
import oimo.collision.narrowphase.CollisionMatrix;
import oimo.collision.narrowphase.DetectorResult;
import oimo.collision.narrowphase.DetectorResultPoint;
import oimo.collision.narrowphase.detector.Detector;
import oimo.collision.narrowphase.detector.BoxBoxDetector;
import oimo.collision.narrowphase.detector.BoxBoxDetectorMacro;
import oimo.collision.narrowphase.detector.CachedDetectorData;
import oimo.collision.narrowphase.detector.CapsuleCapsuleDetector;
import oimo.collision.narrowphase.detector.GjkEpaDetector;
import oimo.collision.narrowphase.detector.SphereBoxDetector;
import oimo.collision.narrowphase.detector.SphereCapsuleDetector;
import oimo.collision.narrowphase.detector.SphereSphereDetector;
import oimo.collision.narrowphase.detector.gjkepa.EpaPolyhedron;
import oimo.collision.narrowphase.detector.gjkepa.EpaPolyhedronState;
import oimo.collision.narrowphase.detector.gjkepa.EpaTriangle;
import oimo.collision.narrowphase.detector.gjkepa.EpaVertex;
import oimo.collision.narrowphase.detector.gjkepa.GjkCache;
import oimo.common.Vec3;
import oimo.common.Transform;
import oimo.common.Setting;
import oimo.collision.narrowphase.detector.gjkepa.GjkEpa;
import oimo.collision.narrowphase.detector.gjkepa.GjkEpaLog;
import oimo.collision.narrowphase.detector.gjkepa.GjkEpaResultState;
import oimo.collision.narrowphase.detector.gjkepa.SimplexUtil;
import oimo.common.Mat3;
import oimo.common.Mat4;
import oimo.common.MathUtil;
import oimo.common.Pool;
import oimo.common.Quat;
import oimo.dynamics.Contact;
import oimo.dynamics.ContactLink;
import oimo.dynamics.ContactManager;
import oimo.dynamics.Island;
import oimo.dynamics.TimeStep;
import oimo.dynamics.World;
import oimo.dynamics.callback.AabbTestCallback;
import oimo.dynamics.callback.ContactCallback;
import oimo.dynamics.callback.RayCastCallback;
import oimo.dynamics.callback.RayCastClosest;
import oimo.dynamics.common.DebugDraw;
import oimo.dynamics.common.DebugDrawStyle;
import oimo.dynamics.common.Performance;
import oimo.dynamics.constraint.ConstraintSolver;
import oimo.dynamics.constraint.PositionCorrectionAlgorithm;
import oimo.dynamics.constraint.contact.ContactConstraint;
import oimo.dynamics.constraint.contact.ContactImpulse;
import oimo.dynamics.constraint.contact.Manifold;
import oimo.dynamics.constraint.contact.ManifoldPoint;
import oimo.dynamics.constraint.contact.ManifoldUpdater;
import oimo.dynamics.constraint.info.JacobianRow;
import oimo.dynamics.constraint.info.contact.ContactSolverInfo;
import oimo.dynamics.constraint.info.contact.ContactSolverInfoRow;
import oimo.dynamics.constraint.info.joint.JointSolverInfo;
import oimo.dynamics.constraint.info.joint.JointSolverInfoRow;
import oimo.dynamics.constraint.joint.BasisTracker;
import oimo.dynamics.constraint.joint.Joint;
import oimo.dynamics.constraint.joint.CylindricalJoint;
import oimo.dynamics.constraint.joint.JointConfig;
import oimo.dynamics.constraint.joint.CylindricalJointConfig;
import oimo.dynamics.constraint.joint.GenericJoint;
import oimo.dynamics.constraint.joint.GenericJointConfig;
import oimo.dynamics.constraint.joint.JointImpulse;
import oimo.dynamics.constraint.joint.JointLink;
import oimo.dynamics.constraint.joint.JointMacro;
import oimo.dynamics.constraint.joint.JointType;
import oimo.dynamics.constraint.joint.PrismaticJoint;
import oimo.dynamics.constraint.joint.PrismaticJointConfig;
import oimo.dynamics.constraint.joint.RagdollJoint;
import oimo.dynamics.constraint.joint.RagdollJointConfig;
import oimo.dynamics.constraint.joint.RevoluteJoint;
import oimo.dynamics.constraint.joint.RevoluteJointConfig;
import oimo.dynamics.constraint.joint.RotationalLimitMotor;
import oimo.dynamics.constraint.joint.SphericalJoint;
import oimo.dynamics.constraint.joint.SphericalJointConfig;
import oimo.dynamics.constraint.joint.SpringDamper;
import oimo.dynamics.constraint.joint.TranslationalLimitMotor;
import oimo.dynamics.constraint.joint.UniversalJoint;
import oimo.dynamics.constraint.joint.UniversalJointConfig;
import oimo.dynamics.constraint.solver.ConstraintSolverType;
import oimo.dynamics.constraint.solver.common.ContactSolverMassDataRow;
import oimo.dynamics.constraint.solver.common.JointSolverMassDataRow;
import oimo.dynamics.constraint.solver.direct.Boundary;
import oimo.dynamics.constraint.solver.direct.BoundaryBuildInfo;
import oimo.dynamics.constraint.solver.direct.BoundaryBuilder;
import oimo.dynamics.constraint.solver.direct.BoundarySelector;
import oimo.dynamics.constraint.solver.direct.DirectJointConstraintSolver;
import oimo.dynamics.constraint.solver.direct.MassMatrix;
import oimo.dynamics.constraint.solver.pgs.PgsContactConstraintSolver;
import oimo.dynamics.constraint.solver.pgs.PgsJointConstraintSolver;
import oimo.dynamics.rigidbody.MassData;
import oimo.dynamics.rigidbody.RigidBody;
import oimo.dynamics.rigidbody.RigidBodyConfig;
import oimo.dynamics.rigidbody.RigidBodyType;
import oimo.dynamics.rigidbody.Shape;
import oimo.dynamics.rigidbody.ShapeConfig;

/**
 * main class to generate OimoPhysics.js
 */
class Export {
	static inline function main():Void {
		// paste exports from /js_exports.txt
		Syntax.code('
			window["OIMO"] = {};
			window["OIMO"]["BroadPhase"] = oimo_collision_broadphase_BroadPhase;
			oimo_collision_broadphase_BroadPhase.prototype["createProxy"] = oimo_collision_broadphase_BroadPhase.prototype.createProxy;
			oimo_collision_broadphase_BroadPhase.prototype["destroyProxy"] = oimo_collision_broadphase_BroadPhase.prototype.destroyProxy;
			oimo_collision_broadphase_BroadPhase.prototype["moveProxy"] = oimo_collision_broadphase_BroadPhase.prototype.moveProxy;
			oimo_collision_broadphase_BroadPhase.prototype["isOverlapping"] = oimo_collision_broadphase_BroadPhase.prototype.isOverlapping;
			oimo_collision_broadphase_BroadPhase.prototype["collectPairs"] = oimo_collision_broadphase_BroadPhase.prototype.collectPairs;
			oimo_collision_broadphase_BroadPhase.prototype["getProxyPairList"] = oimo_collision_broadphase_BroadPhase.prototype.getProxyPairList;
			oimo_collision_broadphase_BroadPhase.prototype["isIncremental"] = oimo_collision_broadphase_BroadPhase.prototype.isIncremental;
			oimo_collision_broadphase_BroadPhase.prototype["getTestCount"] = oimo_collision_broadphase_BroadPhase.prototype.getTestCount;
			oimo_collision_broadphase_BroadPhase.prototype["rayCast"] = oimo_collision_broadphase_BroadPhase.prototype.rayCast;
			oimo_collision_broadphase_BroadPhase.prototype["convexCast"] = oimo_collision_broadphase_BroadPhase.prototype.convexCast;
			oimo_collision_broadphase_BroadPhase.prototype["aabbTest"] = oimo_collision_broadphase_BroadPhase.prototype.aabbTest;
			window["OIMO"]["Geometry"] = oimo_collision_geometry_Geometry;
			oimo_collision_geometry_Geometry.prototype["getType"] = oimo_collision_geometry_Geometry.prototype.getType;
			oimo_collision_geometry_Geometry.prototype["getVolume"] = oimo_collision_geometry_Geometry.prototype.getVolume;
			oimo_collision_geometry_Geometry.prototype["rayCast"] = oimo_collision_geometry_Geometry.prototype.rayCast;
			window["OIMO"]["ConvexGeometry"] = oimo_collision_geometry_ConvexGeometry;
			oimo_collision_geometry_ConvexGeometry.prototype["getGjkMergin"] = oimo_collision_geometry_ConvexGeometry.prototype.getGjkMergin;
			oimo_collision_geometry_ConvexGeometry.prototype["setGjkMergin"] = oimo_collision_geometry_ConvexGeometry.prototype.setGjkMergin;
			oimo_collision_geometry_ConvexGeometry.prototype["computeLocalSupportingVertex"] = oimo_collision_geometry_ConvexGeometry.prototype.computeLocalSupportingVertex;
			oimo_collision_geometry_ConvexGeometry.prototype["rayCast"] = oimo_collision_geometry_ConvexGeometry.prototype.rayCast;
			window["OIMO"]["BroadPhaseProxyCallback"] = oimo_collision_broadphase_BroadPhaseProxyCallback;
			oimo_collision_broadphase_BroadPhaseProxyCallback.prototype["process"] = oimo_collision_broadphase_BroadPhaseProxyCallback.prototype.process;
			window["OIMO"]["BroadPhaseType"] = oimo_collision_broadphase_BroadPhaseType;
			window["OIMO"]["Proxy"] = oimo_collision_broadphase_Proxy;
			oimo_collision_broadphase_Proxy.prototype["getId"] = oimo_collision_broadphase_Proxy.prototype.getId;
			oimo_collision_broadphase_Proxy.prototype["getFatAabb"] = oimo_collision_broadphase_Proxy.prototype.getFatAabb;
			oimo_collision_broadphase_Proxy.prototype["getFatAabbTo"] = oimo_collision_broadphase_Proxy.prototype.getFatAabbTo;
			window["OIMO"]["ProxyPair"] = oimo_collision_broadphase_ProxyPair;
			oimo_collision_broadphase_ProxyPair.prototype["getProxy1"] = oimo_collision_broadphase_ProxyPair.prototype.getProxy1;
			oimo_collision_broadphase_ProxyPair.prototype["getProxy2"] = oimo_collision_broadphase_ProxyPair.prototype.getProxy2;
			oimo_collision_broadphase_ProxyPair.prototype["getNext"] = oimo_collision_broadphase_ProxyPair.prototype.getNext;
			window["OIMO"]["BruteForceBroadPhase"] = oimo_collision_broadphase_bruteforce_BruteForceBroadPhase;
			oimo_collision_broadphase_bruteforce_BruteForceBroadPhase.prototype["createProxy"] = oimo_collision_broadphase_bruteforce_BruteForceBroadPhase.prototype.createProxy;
			oimo_collision_broadphase_bruteforce_BruteForceBroadPhase.prototype["destroyProxy"] = oimo_collision_broadphase_bruteforce_BruteForceBroadPhase.prototype.destroyProxy;
			oimo_collision_broadphase_bruteforce_BruteForceBroadPhase.prototype["moveProxy"] = oimo_collision_broadphase_bruteforce_BruteForceBroadPhase.prototype.moveProxy;
			oimo_collision_broadphase_bruteforce_BruteForceBroadPhase.prototype["collectPairs"] = oimo_collision_broadphase_bruteforce_BruteForceBroadPhase.prototype.collectPairs;
			oimo_collision_broadphase_bruteforce_BruteForceBroadPhase.prototype["rayCast"] = oimo_collision_broadphase_bruteforce_BruteForceBroadPhase.prototype.rayCast;
			oimo_collision_broadphase_bruteforce_BruteForceBroadPhase.prototype["convexCast"] = oimo_collision_broadphase_bruteforce_BruteForceBroadPhase.prototype.convexCast;
			oimo_collision_broadphase_bruteforce_BruteForceBroadPhase.prototype["aabbTest"] = oimo_collision_broadphase_bruteforce_BruteForceBroadPhase.prototype.aabbTest;
			window["OIMO"]["BvhBroadPhase"] = oimo_collision_broadphase_bvh_BvhBroadPhase;
			oimo_collision_broadphase_bvh_BvhBroadPhase.prototype["createProxy"] = oimo_collision_broadphase_bvh_BvhBroadPhase.prototype.createProxy;
			oimo_collision_broadphase_bvh_BvhBroadPhase.prototype["destroyProxy"] = oimo_collision_broadphase_bvh_BvhBroadPhase.prototype.destroyProxy;
			oimo_collision_broadphase_bvh_BvhBroadPhase.prototype["moveProxy"] = oimo_collision_broadphase_bvh_BvhBroadPhase.prototype.moveProxy;
			oimo_collision_broadphase_bvh_BvhBroadPhase.prototype["collectPairs"] = oimo_collision_broadphase_bvh_BvhBroadPhase.prototype.collectPairs;
			oimo_collision_broadphase_bvh_BvhBroadPhase.prototype["rayCast"] = oimo_collision_broadphase_bvh_BvhBroadPhase.prototype.rayCast;
			oimo_collision_broadphase_bvh_BvhBroadPhase.prototype["convexCast"] = oimo_collision_broadphase_bvh_BvhBroadPhase.prototype.convexCast;
			oimo_collision_broadphase_bvh_BvhBroadPhase.prototype["aabbTest"] = oimo_collision_broadphase_bvh_BvhBroadPhase.prototype.aabbTest;
			oimo_collision_broadphase_bvh_BvhBroadPhase.prototype["getTreeBalance"] = oimo_collision_broadphase_bvh_BvhBroadPhase.prototype.getTreeBalance;
			window["OIMO"]["Aabb"] = oimo_collision_geometry_Aabb;
			oimo_collision_geometry_Aabb.prototype["init"] = oimo_collision_geometry_Aabb.prototype.init;
			oimo_collision_geometry_Aabb.prototype["getMin"] = oimo_collision_geometry_Aabb.prototype.getMin;
			oimo_collision_geometry_Aabb.prototype["getMinTo"] = oimo_collision_geometry_Aabb.prototype.getMinTo;
			oimo_collision_geometry_Aabb.prototype["setMin"] = oimo_collision_geometry_Aabb.prototype.setMin;
			oimo_collision_geometry_Aabb.prototype["getMax"] = oimo_collision_geometry_Aabb.prototype.getMax;
			oimo_collision_geometry_Aabb.prototype["getMaxTo"] = oimo_collision_geometry_Aabb.prototype.getMaxTo;
			oimo_collision_geometry_Aabb.prototype["setMax"] = oimo_collision_geometry_Aabb.prototype.setMax;
			oimo_collision_geometry_Aabb.prototype["getCenter"] = oimo_collision_geometry_Aabb.prototype.getCenter;
			oimo_collision_geometry_Aabb.prototype["getCenterTo"] = oimo_collision_geometry_Aabb.prototype.getCenterTo;
			oimo_collision_geometry_Aabb.prototype["getExtents"] = oimo_collision_geometry_Aabb.prototype.getExtents;
			oimo_collision_geometry_Aabb.prototype["getExtentsTo"] = oimo_collision_geometry_Aabb.prototype.getExtentsTo;
			oimo_collision_geometry_Aabb.prototype["combine"] = oimo_collision_geometry_Aabb.prototype.combine;
			oimo_collision_geometry_Aabb.prototype["combined"] = oimo_collision_geometry_Aabb.prototype.combined;
			oimo_collision_geometry_Aabb.prototype["overlap"] = oimo_collision_geometry_Aabb.prototype.overlap;
			oimo_collision_geometry_Aabb.prototype["getIntersection"] = oimo_collision_geometry_Aabb.prototype.getIntersection;
			oimo_collision_geometry_Aabb.prototype["getIntersectionTo"] = oimo_collision_geometry_Aabb.prototype.getIntersectionTo;
			oimo_collision_geometry_Aabb.prototype["copyFrom"] = oimo_collision_geometry_Aabb.prototype.copyFrom;
			oimo_collision_geometry_Aabb.prototype["clone"] = oimo_collision_geometry_Aabb.prototype.clone;
			window["OIMO"]["BoxGeometry"] = oimo_collision_geometry_BoxGeometry;
			oimo_collision_geometry_BoxGeometry.prototype["getHalfExtents"] = oimo_collision_geometry_BoxGeometry.prototype.getHalfExtents;
			oimo_collision_geometry_BoxGeometry.prototype["getHalfExtentsTo"] = oimo_collision_geometry_BoxGeometry.prototype.getHalfExtentsTo;
			oimo_collision_geometry_BoxGeometry.prototype["computeLocalSupportingVertex"] = oimo_collision_geometry_BoxGeometry.prototype.computeLocalSupportingVertex;
			window["OIMO"]["CapsuleGeometry"] = oimo_collision_geometry_CapsuleGeometry;
			oimo_collision_geometry_CapsuleGeometry.prototype["getRadius"] = oimo_collision_geometry_CapsuleGeometry.prototype.getRadius;
			oimo_collision_geometry_CapsuleGeometry.prototype["getHalfHeight"] = oimo_collision_geometry_CapsuleGeometry.prototype.getHalfHeight;
			oimo_collision_geometry_CapsuleGeometry.prototype["computeLocalSupportingVertex"] = oimo_collision_geometry_CapsuleGeometry.prototype.computeLocalSupportingVertex;
			window["OIMO"]["ConeGeometry"] = oimo_collision_geometry_ConeGeometry;
			oimo_collision_geometry_ConeGeometry.prototype["getRadius"] = oimo_collision_geometry_ConeGeometry.prototype.getRadius;
			oimo_collision_geometry_ConeGeometry.prototype["getHalfHeight"] = oimo_collision_geometry_ConeGeometry.prototype.getHalfHeight;
			oimo_collision_geometry_ConeGeometry.prototype["computeLocalSupportingVertex"] = oimo_collision_geometry_ConeGeometry.prototype.computeLocalSupportingVertex;
			window["OIMO"]["ConvexHullGeometry"] = oimo_collision_geometry_ConvexHullGeometry;
			oimo_collision_geometry_ConvexHullGeometry.prototype["getVertices"] = oimo_collision_geometry_ConvexHullGeometry.prototype.getVertices;
			oimo_collision_geometry_ConvexHullGeometry.prototype["computeLocalSupportingVertex"] = oimo_collision_geometry_ConvexHullGeometry.prototype.computeLocalSupportingVertex;
			window["OIMO"]["CylinderGeometry"] = oimo_collision_geometry_CylinderGeometry;
			oimo_collision_geometry_CylinderGeometry.prototype["getRadius"] = oimo_collision_geometry_CylinderGeometry.prototype.getRadius;
			oimo_collision_geometry_CylinderGeometry.prototype["getHalfHeight"] = oimo_collision_geometry_CylinderGeometry.prototype.getHalfHeight;
			oimo_collision_geometry_CylinderGeometry.prototype["computeLocalSupportingVertex"] = oimo_collision_geometry_CylinderGeometry.prototype.computeLocalSupportingVertex;
			window["OIMO"]["GeometryType"] = oimo_collision_geometry_GeometryType;
			window["OIMO"]["RayCastHit"] = oimo_collision_geometry_RayCastHit;
			window["OIMO"]["SphereGeometry"] = oimo_collision_geometry_SphereGeometry;
			oimo_collision_geometry_SphereGeometry.prototype["getRadius"] = oimo_collision_geometry_SphereGeometry.prototype.getRadius;
			oimo_collision_geometry_SphereGeometry.prototype["computeLocalSupportingVertex"] = oimo_collision_geometry_SphereGeometry.prototype.computeLocalSupportingVertex;
			window["OIMO"]["CollisionMatrix"] = oimo_collision_narrowphase_CollisionMatrix;
			oimo_collision_narrowphase_CollisionMatrix.prototype["getDetector"] = oimo_collision_narrowphase_CollisionMatrix.prototype.getDetector;
			window["OIMO"]["DetectorResult"] = oimo_collision_narrowphase_DetectorResult;
			oimo_collision_narrowphase_DetectorResult.prototype["getMaxDepth"] = oimo_collision_narrowphase_DetectorResult.prototype.getMaxDepth;
			oimo_collision_narrowphase_DetectorResult.prototype["clear"] = oimo_collision_narrowphase_DetectorResult.prototype.clear;
			window["OIMO"]["DetectorResultPoint"] = oimo_collision_narrowphase_DetectorResultPoint;
			window["OIMO"]["Detector"] = oimo_collision_narrowphase_detector_Detector;
			oimo_collision_narrowphase_detector_Detector.prototype["detect"] = oimo_collision_narrowphase_detector_Detector.prototype.detect;
			window["OIMO"]["BoxBoxDetector"] = oimo_collision_narrowphase_detector_BoxBoxDetector;
			window["OIMO"]["CapsuleCapsuleDetector"] = oimo_collision_narrowphase_detector_CapsuleCapsuleDetector;
			window["OIMO"]["GjkEpaDetector"] = oimo_collision_narrowphase_detector_GjkEpaDetector;
			window["OIMO"]["SphereBoxDetector"] = oimo_collision_narrowphase_detector_SphereBoxDetector;
			window["OIMO"]["SphereCapsuleDetector"] = oimo_collision_narrowphase_detector_SphereCapsuleDetector;
			window["OIMO"]["SphereSphereDetector"] = oimo_collision_narrowphase_detector_SphereSphereDetector;
			window["OIMO"]["Vec3"] = oimo_common_Vec3;
			oimo_common_Vec3.prototype["init"] = oimo_common_Vec3.prototype.init;
			oimo_common_Vec3.prototype["zero"] = oimo_common_Vec3.prototype.zero;
			oimo_common_Vec3.prototype["add"] = oimo_common_Vec3.prototype.add;
			oimo_common_Vec3.prototype["add3"] = oimo_common_Vec3.prototype.add3;
			oimo_common_Vec3.prototype["addScaled"] = oimo_common_Vec3.prototype.addScaled;
			oimo_common_Vec3.prototype["sub"] = oimo_common_Vec3.prototype.sub;
			oimo_common_Vec3.prototype["sub3"] = oimo_common_Vec3.prototype.sub3;
			oimo_common_Vec3.prototype["scale"] = oimo_common_Vec3.prototype.scale;
			oimo_common_Vec3.prototype["scale3"] = oimo_common_Vec3.prototype.scale3;
			oimo_common_Vec3.prototype["dot"] = oimo_common_Vec3.prototype.dot;
			oimo_common_Vec3.prototype["cross"] = oimo_common_Vec3.prototype.cross;
			oimo_common_Vec3.prototype["addEq"] = oimo_common_Vec3.prototype.addEq;
			oimo_common_Vec3.prototype["add3Eq"] = oimo_common_Vec3.prototype.add3Eq;
			oimo_common_Vec3.prototype["addScaledEq"] = oimo_common_Vec3.prototype.addScaledEq;
			oimo_common_Vec3.prototype["subEq"] = oimo_common_Vec3.prototype.subEq;
			oimo_common_Vec3.prototype["sub3Eq"] = oimo_common_Vec3.prototype.sub3Eq;
			oimo_common_Vec3.prototype["scaleEq"] = oimo_common_Vec3.prototype.scaleEq;
			oimo_common_Vec3.prototype["scale3Eq"] = oimo_common_Vec3.prototype.scale3Eq;
			oimo_common_Vec3.prototype["crossEq"] = oimo_common_Vec3.prototype.crossEq;
			oimo_common_Vec3.prototype["mulMat3"] = oimo_common_Vec3.prototype.mulMat3;
			oimo_common_Vec3.prototype["mulMat4"] = oimo_common_Vec3.prototype.mulMat4;
			oimo_common_Vec3.prototype["mulTransform"] = oimo_common_Vec3.prototype.mulTransform;
			oimo_common_Vec3.prototype["mulMat3Eq"] = oimo_common_Vec3.prototype.mulMat3Eq;
			oimo_common_Vec3.prototype["mulMat4Eq"] = oimo_common_Vec3.prototype.mulMat4Eq;
			oimo_common_Vec3.prototype["mulTransformEq"] = oimo_common_Vec3.prototype.mulTransformEq;
			oimo_common_Vec3.prototype["length"] = oimo_common_Vec3.prototype.length;
			oimo_common_Vec3.prototype["lengthSq"] = oimo_common_Vec3.prototype.lengthSq;
			oimo_common_Vec3.prototype["normalized"] = oimo_common_Vec3.prototype.normalized;
			oimo_common_Vec3.prototype["normalize"] = oimo_common_Vec3.prototype.normalize;
			oimo_common_Vec3.prototype["negate"] = oimo_common_Vec3.prototype.negate;
			oimo_common_Vec3.prototype["negateEq"] = oimo_common_Vec3.prototype.negateEq;
			oimo_common_Vec3.prototype["copyFrom"] = oimo_common_Vec3.prototype.copyFrom;
			oimo_common_Vec3.prototype["clone"] = oimo_common_Vec3.prototype.clone;
			oimo_common_Vec3.prototype["toString"] = oimo_common_Vec3.prototype.toString;
			window["OIMO"]["Transform"] = oimo_common_Transform;
			oimo_common_Transform.prototype["identity"] = oimo_common_Transform.prototype.identity;
			oimo_common_Transform.prototype["getPosition"] = oimo_common_Transform.prototype.getPosition;
			oimo_common_Transform.prototype["getPositionTo"] = oimo_common_Transform.prototype.getPositionTo;
			oimo_common_Transform.prototype["setPosition"] = oimo_common_Transform.prototype.setPosition;
			oimo_common_Transform.prototype["translate"] = oimo_common_Transform.prototype.translate;
			oimo_common_Transform.prototype["getRotation"] = oimo_common_Transform.prototype.getRotation;
			oimo_common_Transform.prototype["getRotationTo"] = oimo_common_Transform.prototype.getRotationTo;
			oimo_common_Transform.prototype["setRotation"] = oimo_common_Transform.prototype.setRotation;
			oimo_common_Transform.prototype["setRotationXyz"] = oimo_common_Transform.prototype.setRotationXyz;
			oimo_common_Transform.prototype["rotate"] = oimo_common_Transform.prototype.rotate;
			oimo_common_Transform.prototype["rotateXyz"] = oimo_common_Transform.prototype.rotateXyz;
			oimo_common_Transform.prototype["getOrientation"] = oimo_common_Transform.prototype.getOrientation;
			oimo_common_Transform.prototype["getOrientationTo"] = oimo_common_Transform.prototype.getOrientationTo;
			oimo_common_Transform.prototype["setOrientation"] = oimo_common_Transform.prototype.setOrientation;
			oimo_common_Transform.prototype["clone"] = oimo_common_Transform.prototype.clone;
			oimo_common_Transform.prototype["copyFrom"] = oimo_common_Transform.prototype.copyFrom;
			window["OIMO"]["Setting"] = oimo_common_Setting;
			window["OIMO"]["GjkEpa"] = oimo_collision_narrowphase_detector_gjkepa_GjkEpa;
			oimo_collision_narrowphase_detector_gjkepa_GjkEpa.prototype["computeClosestPoints"] = oimo_collision_narrowphase_detector_gjkepa_GjkEpa.prototype.computeClosestPoints;
			oimo_collision_narrowphase_detector_gjkepa_GjkEpa.prototype["computeDistance"] = oimo_collision_narrowphase_detector_gjkepa_GjkEpa.prototype.computeDistance;
			oimo_collision_narrowphase_detector_gjkepa_GjkEpa.prototype["convexCast"] = oimo_collision_narrowphase_detector_gjkepa_GjkEpa.prototype.convexCast;
			oimo_collision_narrowphase_detector_gjkepa_GjkEpa.prototype["rayCast"] = oimo_collision_narrowphase_detector_gjkepa_GjkEpa.prototype.rayCast;
			oimo_collision_narrowphase_detector_gjkepa_GjkEpa["getInstance"] = oimo_collision_narrowphase_detector_gjkepa_GjkEpa.getInstance;
			window["OIMO"]["GjkEpaResultState"] = oimo_collision_narrowphase_detector_gjkepa_GjkEpaResultState;
			window["OIMO"]["SimplexUtil"] = oimo_collision_narrowphase_detector_gjkepa_SimplexUtil;
			oimo_collision_narrowphase_detector_gjkepa_SimplexUtil["projectOrigin2"] = oimo_collision_narrowphase_detector_gjkepa_SimplexUtil.projectOrigin2;
			oimo_collision_narrowphase_detector_gjkepa_SimplexUtil["projectOrigin3"] = oimo_collision_narrowphase_detector_gjkepa_SimplexUtil.projectOrigin3;
			oimo_collision_narrowphase_detector_gjkepa_SimplexUtil["projectOrigin4"] = oimo_collision_narrowphase_detector_gjkepa_SimplexUtil.projectOrigin4;
			window["OIMO"]["Mat3"] = oimo_common_Mat3;
			oimo_common_Mat3.prototype["init"] = oimo_common_Mat3.prototype.init;
			oimo_common_Mat3.prototype["identity"] = oimo_common_Mat3.prototype.identity;
			oimo_common_Mat3.prototype["add"] = oimo_common_Mat3.prototype.add;
			oimo_common_Mat3.prototype["sub"] = oimo_common_Mat3.prototype.sub;
			oimo_common_Mat3.prototype["scale"] = oimo_common_Mat3.prototype.scale;
			oimo_common_Mat3.prototype["mul"] = oimo_common_Mat3.prototype.mul;
			oimo_common_Mat3.prototype["addEq"] = oimo_common_Mat3.prototype.addEq;
			oimo_common_Mat3.prototype["subEq"] = oimo_common_Mat3.prototype.subEq;
			oimo_common_Mat3.prototype["scaleEq"] = oimo_common_Mat3.prototype.scaleEq;
			oimo_common_Mat3.prototype["mulEq"] = oimo_common_Mat3.prototype.mulEq;
			oimo_common_Mat3.prototype["prependScale"] = oimo_common_Mat3.prototype.prependScale;
			oimo_common_Mat3.prototype["appendScale"] = oimo_common_Mat3.prototype.appendScale;
			oimo_common_Mat3.prototype["prependRotation"] = oimo_common_Mat3.prototype.prependRotation;
			oimo_common_Mat3.prototype["appendRotation"] = oimo_common_Mat3.prototype.appendRotation;
			oimo_common_Mat3.prototype["prependScaleEq"] = oimo_common_Mat3.prototype.prependScaleEq;
			oimo_common_Mat3.prototype["appendScaleEq"] = oimo_common_Mat3.prototype.appendScaleEq;
			oimo_common_Mat3.prototype["prependRotationEq"] = oimo_common_Mat3.prototype.prependRotationEq;
			oimo_common_Mat3.prototype["appendRotationEq"] = oimo_common_Mat3.prototype.appendRotationEq;
			oimo_common_Mat3.prototype["transpose"] = oimo_common_Mat3.prototype.transpose;
			oimo_common_Mat3.prototype["transposeEq"] = oimo_common_Mat3.prototype.transposeEq;
			oimo_common_Mat3.prototype["determinant"] = oimo_common_Mat3.prototype.determinant;
			oimo_common_Mat3.prototype["trace"] = oimo_common_Mat3.prototype.trace;
			oimo_common_Mat3.prototype["inverse"] = oimo_common_Mat3.prototype.inverse;
			oimo_common_Mat3.prototype["inverseEq"] = oimo_common_Mat3.prototype.inverseEq;
			oimo_common_Mat3.prototype["toArray"] = oimo_common_Mat3.prototype.toArray;
			oimo_common_Mat3.prototype["copyFrom"] = oimo_common_Mat3.prototype.copyFrom;
			oimo_common_Mat3.prototype["clone"] = oimo_common_Mat3.prototype.clone;
			oimo_common_Mat3.prototype["fromQuat"] = oimo_common_Mat3.prototype.fromQuat;
			oimo_common_Mat3.prototype["toQuat"] = oimo_common_Mat3.prototype.toQuat;
			oimo_common_Mat3.prototype["fromEulerXyz"] = oimo_common_Mat3.prototype.fromEulerXyz;
			oimo_common_Mat3.prototype["toEulerXyz"] = oimo_common_Mat3.prototype.toEulerXyz;
			oimo_common_Mat3.prototype["getRow"] = oimo_common_Mat3.prototype.getRow;
			oimo_common_Mat3.prototype["getCol"] = oimo_common_Mat3.prototype.getCol;
			oimo_common_Mat3.prototype["getRowTo"] = oimo_common_Mat3.prototype.getRowTo;
			oimo_common_Mat3.prototype["getColTo"] = oimo_common_Mat3.prototype.getColTo;
			oimo_common_Mat3.prototype["fromRows"] = oimo_common_Mat3.prototype.fromRows;
			oimo_common_Mat3.prototype["fromCols"] = oimo_common_Mat3.prototype.fromCols;
			oimo_common_Mat3.prototype["toString"] = oimo_common_Mat3.prototype.toString;
			window["OIMO"]["Mat4"] = oimo_common_Mat4;
			oimo_common_Mat4.prototype["init"] = oimo_common_Mat4.prototype.init;
			oimo_common_Mat4.prototype["identity"] = oimo_common_Mat4.prototype.identity;
			oimo_common_Mat4.prototype["add"] = oimo_common_Mat4.prototype.add;
			oimo_common_Mat4.prototype["sub"] = oimo_common_Mat4.prototype.sub;
			oimo_common_Mat4.prototype["scale"] = oimo_common_Mat4.prototype.scale;
			oimo_common_Mat4.prototype["mul"] = oimo_common_Mat4.prototype.mul;
			oimo_common_Mat4.prototype["addEq"] = oimo_common_Mat4.prototype.addEq;
			oimo_common_Mat4.prototype["subEq"] = oimo_common_Mat4.prototype.subEq;
			oimo_common_Mat4.prototype["scaleEq"] = oimo_common_Mat4.prototype.scaleEq;
			oimo_common_Mat4.prototype["mulEq"] = oimo_common_Mat4.prototype.mulEq;
			oimo_common_Mat4.prototype["prependScale"] = oimo_common_Mat4.prototype.prependScale;
			oimo_common_Mat4.prototype["appendScale"] = oimo_common_Mat4.prototype.appendScale;
			oimo_common_Mat4.prototype["prependRotation"] = oimo_common_Mat4.prototype.prependRotation;
			oimo_common_Mat4.prototype["appendRotation"] = oimo_common_Mat4.prototype.appendRotation;
			oimo_common_Mat4.prototype["prependTranslation"] = oimo_common_Mat4.prototype.prependTranslation;
			oimo_common_Mat4.prototype["appendTranslation"] = oimo_common_Mat4.prototype.appendTranslation;
			oimo_common_Mat4.prototype["prependScaleEq"] = oimo_common_Mat4.prototype.prependScaleEq;
			oimo_common_Mat4.prototype["appendScaleEq"] = oimo_common_Mat4.prototype.appendScaleEq;
			oimo_common_Mat4.prototype["prependRotationEq"] = oimo_common_Mat4.prototype.prependRotationEq;
			oimo_common_Mat4.prototype["appendRotationEq"] = oimo_common_Mat4.prototype.appendRotationEq;
			oimo_common_Mat4.prototype["prependTranslationEq"] = oimo_common_Mat4.prototype.prependTranslationEq;
			oimo_common_Mat4.prototype["appendTranslationEq"] = oimo_common_Mat4.prototype.appendTranslationEq;
			oimo_common_Mat4.prototype["transpose"] = oimo_common_Mat4.prototype.transpose;
			oimo_common_Mat4.prototype["transposeEq"] = oimo_common_Mat4.prototype.transposeEq;
			oimo_common_Mat4.prototype["determinant"] = oimo_common_Mat4.prototype.determinant;
			oimo_common_Mat4.prototype["trace"] = oimo_common_Mat4.prototype.trace;
			oimo_common_Mat4.prototype["inverse"] = oimo_common_Mat4.prototype.inverse;
			oimo_common_Mat4.prototype["inverseEq"] = oimo_common_Mat4.prototype.inverseEq;
			oimo_common_Mat4.prototype["lookAt"] = oimo_common_Mat4.prototype.lookAt;
			oimo_common_Mat4.prototype["perspective"] = oimo_common_Mat4.prototype.perspective;
			oimo_common_Mat4.prototype["ortho"] = oimo_common_Mat4.prototype.ortho;
			oimo_common_Mat4.prototype["toArray"] = oimo_common_Mat4.prototype.toArray;
			oimo_common_Mat4.prototype["copyFrom"] = oimo_common_Mat4.prototype.copyFrom;
			oimo_common_Mat4.prototype["fromMat3"] = oimo_common_Mat4.prototype.fromMat3;
			oimo_common_Mat4.prototype["fromTransform"] = oimo_common_Mat4.prototype.fromTransform;
			oimo_common_Mat4.prototype["clone"] = oimo_common_Mat4.prototype.clone;
			oimo_common_Mat4.prototype["toString"] = oimo_common_Mat4.prototype.toString;
			window["OIMO"]["MathUtil"] = oimo_common_MathUtil;
			oimo_common_MathUtil["abs"] = oimo_common_MathUtil.abs;
			oimo_common_MathUtil["sin"] = oimo_common_MathUtil.sin;
			oimo_common_MathUtil["cos"] = oimo_common_MathUtil.cos;
			oimo_common_MathUtil["tan"] = oimo_common_MathUtil.tan;
			oimo_common_MathUtil["asin"] = oimo_common_MathUtil.asin;
			oimo_common_MathUtil["acos"] = oimo_common_MathUtil.acos;
			oimo_common_MathUtil["atan"] = oimo_common_MathUtil.atan;
			oimo_common_MathUtil["safeAsin"] = oimo_common_MathUtil.safeAsin;
			oimo_common_MathUtil["safeAcos"] = oimo_common_MathUtil.safeAcos;
			oimo_common_MathUtil["atan2"] = oimo_common_MathUtil.atan2;
			oimo_common_MathUtil["sqrt"] = oimo_common_MathUtil.sqrt;
			oimo_common_MathUtil["clamp"] = oimo_common_MathUtil.clamp;
			oimo_common_MathUtil["rand"] = oimo_common_MathUtil.rand;
			oimo_common_MathUtil["randIn"] = oimo_common_MathUtil.randIn;
			oimo_common_MathUtil["randVec3In"] = oimo_common_MathUtil.randVec3In;
			oimo_common_MathUtil["randVec3"] = oimo_common_MathUtil.randVec3;
			window["OIMO"]["Pool"] = oimo_common_Pool;
			oimo_common_Pool.prototype["vec3"] = oimo_common_Pool.prototype.vec3;
			oimo_common_Pool.prototype["mat3"] = oimo_common_Pool.prototype.mat3;
			oimo_common_Pool.prototype["mat4"] = oimo_common_Pool.prototype.mat4;
			oimo_common_Pool.prototype["quat"] = oimo_common_Pool.prototype.quat;
			oimo_common_Pool.prototype["dispose"] = oimo_common_Pool.prototype.dispose;
			oimo_common_Pool.prototype["disposeVec3"] = oimo_common_Pool.prototype.disposeVec3;
			oimo_common_Pool.prototype["disposeMat3"] = oimo_common_Pool.prototype.disposeMat3;
			oimo_common_Pool.prototype["disposeMat4"] = oimo_common_Pool.prototype.disposeMat4;
			oimo_common_Pool.prototype["disposeQuat"] = oimo_common_Pool.prototype.disposeQuat;
			window["OIMO"]["Quat"] = oimo_common_Quat;
			oimo_common_Quat.prototype["identity"] = oimo_common_Quat.prototype.identity;
			oimo_common_Quat.prototype["init"] = oimo_common_Quat.prototype.init;
			oimo_common_Quat.prototype["add"] = oimo_common_Quat.prototype.add;
			oimo_common_Quat.prototype["sub"] = oimo_common_Quat.prototype.sub;
			oimo_common_Quat.prototype["scale"] = oimo_common_Quat.prototype.scale;
			oimo_common_Quat.prototype["addEq"] = oimo_common_Quat.prototype.addEq;
			oimo_common_Quat.prototype["subEq"] = oimo_common_Quat.prototype.subEq;
			oimo_common_Quat.prototype["scaleEq"] = oimo_common_Quat.prototype.scaleEq;
			oimo_common_Quat.prototype["length"] = oimo_common_Quat.prototype.length;
			oimo_common_Quat.prototype["lengthSq"] = oimo_common_Quat.prototype.lengthSq;
			oimo_common_Quat.prototype["dot"] = oimo_common_Quat.prototype.dot;
			oimo_common_Quat.prototype["normalized"] = oimo_common_Quat.prototype.normalized;
			oimo_common_Quat.prototype["normalize"] = oimo_common_Quat.prototype.normalize;
			oimo_common_Quat.prototype["setArc"] = oimo_common_Quat.prototype.setArc;
			oimo_common_Quat.prototype["slerp"] = oimo_common_Quat.prototype.slerp;
			oimo_common_Quat.prototype["copyFrom"] = oimo_common_Quat.prototype.copyFrom;
			oimo_common_Quat.prototype["clone"] = oimo_common_Quat.prototype.clone;
			oimo_common_Quat.prototype["fromMat3"] = oimo_common_Quat.prototype.fromMat3;
			oimo_common_Quat.prototype["toMat3"] = oimo_common_Quat.prototype.toMat3;
			oimo_common_Quat.prototype["toString"] = oimo_common_Quat.prototype.toString;
			window["OIMO"]["Contact"] = oimo_dynamics_Contact;
			oimo_dynamics_Contact.prototype["getShape1"] = oimo_dynamics_Contact.prototype.getShape1;
			oimo_dynamics_Contact.prototype["getShape2"] = oimo_dynamics_Contact.prototype.getShape2;
			oimo_dynamics_Contact.prototype["isTouching"] = oimo_dynamics_Contact.prototype.isTouching;
			oimo_dynamics_Contact.prototype["getManifold"] = oimo_dynamics_Contact.prototype.getManifold;
			oimo_dynamics_Contact.prototype["getContactConstraint"] = oimo_dynamics_Contact.prototype.getContactConstraint;
			oimo_dynamics_Contact.prototype["getPrev"] = oimo_dynamics_Contact.prototype.getPrev;
			oimo_dynamics_Contact.prototype["getNext"] = oimo_dynamics_Contact.prototype.getNext;
			window["OIMO"]["ContactLink"] = oimo_dynamics_ContactLink;
			oimo_dynamics_ContactLink.prototype["getContact"] = oimo_dynamics_ContactLink.prototype.getContact;
			oimo_dynamics_ContactLink.prototype["getOther"] = oimo_dynamics_ContactLink.prototype.getOther;
			oimo_dynamics_ContactLink.prototype["getPrev"] = oimo_dynamics_ContactLink.prototype.getPrev;
			oimo_dynamics_ContactLink.prototype["getNext"] = oimo_dynamics_ContactLink.prototype.getNext;
			window["OIMO"]["ContactManager"] = oimo_dynamics_ContactManager;
			oimo_dynamics_ContactManager.prototype["getNumContacts"] = oimo_dynamics_ContactManager.prototype.getNumContacts;
			oimo_dynamics_ContactManager.prototype["getContactList"] = oimo_dynamics_ContactManager.prototype.getContactList;
			window["OIMO"]["TimeStep"] = oimo_dynamics_TimeStep;
			window["OIMO"]["World"] = oimo_dynamics_World;
			oimo_dynamics_World.prototype["step"] = oimo_dynamics_World.prototype.step;
			oimo_dynamics_World.prototype["addRigidBody"] = oimo_dynamics_World.prototype.addRigidBody;
			oimo_dynamics_World.prototype["removeRigidBody"] = oimo_dynamics_World.prototype.removeRigidBody;
			oimo_dynamics_World.prototype["addJoint"] = oimo_dynamics_World.prototype.addJoint;
			oimo_dynamics_World.prototype["removeJoint"] = oimo_dynamics_World.prototype.removeJoint;
			oimo_dynamics_World.prototype["setDebugDraw"] = oimo_dynamics_World.prototype.setDebugDraw;
			oimo_dynamics_World.prototype["getDebugDraw"] = oimo_dynamics_World.prototype.getDebugDraw;
			oimo_dynamics_World.prototype["debugDraw"] = oimo_dynamics_World.prototype.debugDraw;
			oimo_dynamics_World.prototype["rayCast"] = oimo_dynamics_World.prototype.rayCast;
			oimo_dynamics_World.prototype["convexCast"] = oimo_dynamics_World.prototype.convexCast;
			oimo_dynamics_World.prototype["aabbTest"] = oimo_dynamics_World.prototype.aabbTest;
			oimo_dynamics_World.prototype["getRigidBodyList"] = oimo_dynamics_World.prototype.getRigidBodyList;
			oimo_dynamics_World.prototype["getJointList"] = oimo_dynamics_World.prototype.getJointList;
			oimo_dynamics_World.prototype["getBroadPhase"] = oimo_dynamics_World.prototype.getBroadPhase;
			oimo_dynamics_World.prototype["getContactManager"] = oimo_dynamics_World.prototype.getContactManager;
			oimo_dynamics_World.prototype["getNumRigidBodies"] = oimo_dynamics_World.prototype.getNumRigidBodies;
			oimo_dynamics_World.prototype["getNumJoints"] = oimo_dynamics_World.prototype.getNumJoints;
			oimo_dynamics_World.prototype["getNumShapes"] = oimo_dynamics_World.prototype.getNumShapes;
			oimo_dynamics_World.prototype["getNumIslands"] = oimo_dynamics_World.prototype.getNumIslands;
			oimo_dynamics_World.prototype["getNumVelocityIterations"] = oimo_dynamics_World.prototype.getNumVelocityIterations;
			oimo_dynamics_World.prototype["setNumVelocityIterations"] = oimo_dynamics_World.prototype.setNumVelocityIterations;
			oimo_dynamics_World.prototype["getNumPositionIterations"] = oimo_dynamics_World.prototype.getNumPositionIterations;
			oimo_dynamics_World.prototype["setNumPositionIterations"] = oimo_dynamics_World.prototype.setNumPositionIterations;
			oimo_dynamics_World.prototype["getGravity"] = oimo_dynamics_World.prototype.getGravity;
			oimo_dynamics_World.prototype["setGravity"] = oimo_dynamics_World.prototype.setGravity;
			window["OIMO"]["AabbTestCallback"] = oimo_dynamics_callback_AabbTestCallback;
			window["OIMO"]["ContactCallback"] = oimo_dynamics_callback_ContactCallback;
			window["OIMO"]["RayCastCallback"] = oimo_dynamics_callback_RayCastCallback;
			window["OIMO"]["RayCastClosest"] = oimo_dynamics_callback_RayCastClosest;
			oimo_dynamics_callback_RayCastClosest.prototype["clear"] = oimo_dynamics_callback_RayCastClosest.prototype.clear;
			oimo_dynamics_callback_RayCastClosest.prototype["process"] = oimo_dynamics_callback_RayCastClosest.prototype.process;
			window["OIMO"]["DebugDraw"] = oimo_dynamics_common_DebugDraw;
			window["OIMO"]["DebugDrawStyle"] = oimo_dynamics_common_DebugDrawStyle;
			window["OIMO"]["Performance"] = oimo_dynamics_common_Performance;
			window["OIMO"]["ConstraintSolver"] = oimo_dynamics_constraint_ConstraintSolver;
			oimo_dynamics_constraint_ConstraintSolver.prototype["preSolveVelocity"] = oimo_dynamics_constraint_ConstraintSolver.prototype.preSolveVelocity;
			oimo_dynamics_constraint_ConstraintSolver.prototype["warmStart"] = oimo_dynamics_constraint_ConstraintSolver.prototype.warmStart;
			oimo_dynamics_constraint_ConstraintSolver.prototype["solveVelocity"] = oimo_dynamics_constraint_ConstraintSolver.prototype.solveVelocity;
			oimo_dynamics_constraint_ConstraintSolver.prototype["postSolveVelocity"] = oimo_dynamics_constraint_ConstraintSolver.prototype.postSolveVelocity;
			oimo_dynamics_constraint_ConstraintSolver.prototype["preSolvePosition"] = oimo_dynamics_constraint_ConstraintSolver.prototype.preSolvePosition;
			oimo_dynamics_constraint_ConstraintSolver.prototype["solvePositionSplitImpulse"] = oimo_dynamics_constraint_ConstraintSolver.prototype.solvePositionSplitImpulse;
			oimo_dynamics_constraint_ConstraintSolver.prototype["solvePositionNgs"] = oimo_dynamics_constraint_ConstraintSolver.prototype.solvePositionNgs;
			oimo_dynamics_constraint_ConstraintSolver.prototype["postSolve"] = oimo_dynamics_constraint_ConstraintSolver.prototype.postSolve;
			window["OIMO"]["PositionCorrectionAlgorithm"] = oimo_dynamics_constraint_PositionCorrectionAlgorithm;
			window["OIMO"]["ContactConstraint"] = oimo_dynamics_constraint_contact_ContactConstraint;
			oimo_dynamics_constraint_contact_ContactConstraint.prototype["getShape1"] = oimo_dynamics_constraint_contact_ContactConstraint.prototype.getShape1;
			oimo_dynamics_constraint_contact_ContactConstraint.prototype["getShape2"] = oimo_dynamics_constraint_contact_ContactConstraint.prototype.getShape2;
			oimo_dynamics_constraint_contact_ContactConstraint.prototype["getManifold"] = oimo_dynamics_constraint_contact_ContactConstraint.prototype.getManifold;
			oimo_dynamics_constraint_contact_ContactConstraint.prototype["isTouching"] = oimo_dynamics_constraint_contact_ContactConstraint.prototype.isTouching;
			window["OIMO"]["Manifold"] = oimo_dynamics_constraint_contact_Manifold;
			oimo_dynamics_constraint_contact_Manifold.prototype["getNormal"] = oimo_dynamics_constraint_contact_Manifold.prototype.getNormal;
			oimo_dynamics_constraint_contact_Manifold.prototype["getNormalTo"] = oimo_dynamics_constraint_contact_Manifold.prototype.getNormalTo;
			oimo_dynamics_constraint_contact_Manifold.prototype["getTangent"] = oimo_dynamics_constraint_contact_Manifold.prototype.getTangent;
			oimo_dynamics_constraint_contact_Manifold.prototype["getTangentTo"] = oimo_dynamics_constraint_contact_Manifold.prototype.getTangentTo;
			oimo_dynamics_constraint_contact_Manifold.prototype["getBinormal"] = oimo_dynamics_constraint_contact_Manifold.prototype.getBinormal;
			oimo_dynamics_constraint_contact_Manifold.prototype["getBinormalTo"] = oimo_dynamics_constraint_contact_Manifold.prototype.getBinormalTo;
			oimo_dynamics_constraint_contact_Manifold.prototype["getPoints"] = oimo_dynamics_constraint_contact_Manifold.prototype.getPoints;
			oimo_dynamics_constraint_contact_Manifold.prototype["getNumPoints"] = oimo_dynamics_constraint_contact_Manifold.prototype.getNumPoints;
			window["OIMO"]["ManifoldPoint"] = oimo_dynamics_constraint_contact_ManifoldPoint;
			oimo_dynamics_constraint_contact_ManifoldPoint.prototype["getPosition1"] = oimo_dynamics_constraint_contact_ManifoldPoint.prototype.getPosition1;
			oimo_dynamics_constraint_contact_ManifoldPoint.prototype["getPosition1To"] = oimo_dynamics_constraint_contact_ManifoldPoint.prototype.getPosition1To;
			oimo_dynamics_constraint_contact_ManifoldPoint.prototype["getPosition2"] = oimo_dynamics_constraint_contact_ManifoldPoint.prototype.getPosition2;
			oimo_dynamics_constraint_contact_ManifoldPoint.prototype["getPosition2To"] = oimo_dynamics_constraint_contact_ManifoldPoint.prototype.getPosition2To;
			oimo_dynamics_constraint_contact_ManifoldPoint.prototype["getDepth"] = oimo_dynamics_constraint_contact_ManifoldPoint.prototype.getDepth;
			oimo_dynamics_constraint_contact_ManifoldPoint.prototype["isWarmStarted"] = oimo_dynamics_constraint_contact_ManifoldPoint.prototype.isWarmStarted;
			oimo_dynamics_constraint_contact_ManifoldPoint.prototype["getNormalImpulse"] = oimo_dynamics_constraint_contact_ManifoldPoint.prototype.getNormalImpulse;
			oimo_dynamics_constraint_contact_ManifoldPoint.prototype["getTangentImpulse"] = oimo_dynamics_constraint_contact_ManifoldPoint.prototype.getTangentImpulse;
			oimo_dynamics_constraint_contact_ManifoldPoint.prototype["getBinormalImpulse"] = oimo_dynamics_constraint_contact_ManifoldPoint.prototype.getBinormalImpulse;
			oimo_dynamics_constraint_contact_ManifoldPoint.prototype["isEnabled"] = oimo_dynamics_constraint_contact_ManifoldPoint.prototype.isEnabled;
			window["OIMO"]["Joint"] = oimo_dynamics_constraint_joint_Joint;
			oimo_dynamics_constraint_joint_Joint.prototype["getRigidBody1"] = oimo_dynamics_constraint_joint_Joint.prototype.getRigidBody1;
			oimo_dynamics_constraint_joint_Joint.prototype["getRigidBody2"] = oimo_dynamics_constraint_joint_Joint.prototype.getRigidBody2;
			oimo_dynamics_constraint_joint_Joint.prototype["getType"] = oimo_dynamics_constraint_joint_Joint.prototype.getType;
			oimo_dynamics_constraint_joint_Joint.prototype["getAnchor1"] = oimo_dynamics_constraint_joint_Joint.prototype.getAnchor1;
			oimo_dynamics_constraint_joint_Joint.prototype["getAnchor2"] = oimo_dynamics_constraint_joint_Joint.prototype.getAnchor2;
			oimo_dynamics_constraint_joint_Joint.prototype["getAnchor1To"] = oimo_dynamics_constraint_joint_Joint.prototype.getAnchor1To;
			oimo_dynamics_constraint_joint_Joint.prototype["getAnchor2To"] = oimo_dynamics_constraint_joint_Joint.prototype.getAnchor2To;
			oimo_dynamics_constraint_joint_Joint.prototype["getLocalAnchor1"] = oimo_dynamics_constraint_joint_Joint.prototype.getLocalAnchor1;
			oimo_dynamics_constraint_joint_Joint.prototype["getLocalAnchor2"] = oimo_dynamics_constraint_joint_Joint.prototype.getLocalAnchor2;
			oimo_dynamics_constraint_joint_Joint.prototype["getLocalAnchor1To"] = oimo_dynamics_constraint_joint_Joint.prototype.getLocalAnchor1To;
			oimo_dynamics_constraint_joint_Joint.prototype["getLocalAnchor2To"] = oimo_dynamics_constraint_joint_Joint.prototype.getLocalAnchor2To;
			oimo_dynamics_constraint_joint_Joint.prototype["getBasis1"] = oimo_dynamics_constraint_joint_Joint.prototype.getBasis1;
			oimo_dynamics_constraint_joint_Joint.prototype["getBasis2"] = oimo_dynamics_constraint_joint_Joint.prototype.getBasis2;
			oimo_dynamics_constraint_joint_Joint.prototype["getBasis1To"] = oimo_dynamics_constraint_joint_Joint.prototype.getBasis1To;
			oimo_dynamics_constraint_joint_Joint.prototype["getBasis2To"] = oimo_dynamics_constraint_joint_Joint.prototype.getBasis2To;
			oimo_dynamics_constraint_joint_Joint.prototype["getAllowCollision"] = oimo_dynamics_constraint_joint_Joint.prototype.getAllowCollision;
			oimo_dynamics_constraint_joint_Joint.prototype["setAllowCollision"] = oimo_dynamics_constraint_joint_Joint.prototype.setAllowCollision;
			oimo_dynamics_constraint_joint_Joint.prototype["getBreakForce"] = oimo_dynamics_constraint_joint_Joint.prototype.getBreakForce;
			oimo_dynamics_constraint_joint_Joint.prototype["setBreakForce"] = oimo_dynamics_constraint_joint_Joint.prototype.setBreakForce;
			oimo_dynamics_constraint_joint_Joint.prototype["getBreakTorque"] = oimo_dynamics_constraint_joint_Joint.prototype.getBreakTorque;
			oimo_dynamics_constraint_joint_Joint.prototype["setBreakTorque"] = oimo_dynamics_constraint_joint_Joint.prototype.setBreakTorque;
			oimo_dynamics_constraint_joint_Joint.prototype["getPositionCorrectionAlgorithm"] = oimo_dynamics_constraint_joint_Joint.prototype.getPositionCorrectionAlgorithm;
			oimo_dynamics_constraint_joint_Joint.prototype["setPositionCorrectionAlgorithm"] = oimo_dynamics_constraint_joint_Joint.prototype.setPositionCorrectionAlgorithm;
			oimo_dynamics_constraint_joint_Joint.prototype["getAppliedForce"] = oimo_dynamics_constraint_joint_Joint.prototype.getAppliedForce;
			oimo_dynamics_constraint_joint_Joint.prototype["getAppliedForceTo"] = oimo_dynamics_constraint_joint_Joint.prototype.getAppliedForceTo;
			oimo_dynamics_constraint_joint_Joint.prototype["getAppliedTorque"] = oimo_dynamics_constraint_joint_Joint.prototype.getAppliedTorque;
			oimo_dynamics_constraint_joint_Joint.prototype["getAppliedTorqueTo"] = oimo_dynamics_constraint_joint_Joint.prototype.getAppliedTorqueTo;
			oimo_dynamics_constraint_joint_Joint.prototype["getPrev"] = oimo_dynamics_constraint_joint_Joint.prototype.getPrev;
			oimo_dynamics_constraint_joint_Joint.prototype["getNext"] = oimo_dynamics_constraint_joint_Joint.prototype.getNext;
			window["OIMO"]["CylindricalJoint"] = oimo_dynamics_constraint_joint_CylindricalJoint;
			oimo_dynamics_constraint_joint_CylindricalJoint.prototype["getAxis1"] = oimo_dynamics_constraint_joint_CylindricalJoint.prototype.getAxis1;
			oimo_dynamics_constraint_joint_CylindricalJoint.prototype["getAxis2"] = oimo_dynamics_constraint_joint_CylindricalJoint.prototype.getAxis2;
			oimo_dynamics_constraint_joint_CylindricalJoint.prototype["getAxis1To"] = oimo_dynamics_constraint_joint_CylindricalJoint.prototype.getAxis1To;
			oimo_dynamics_constraint_joint_CylindricalJoint.prototype["getAxis2To"] = oimo_dynamics_constraint_joint_CylindricalJoint.prototype.getAxis2To;
			oimo_dynamics_constraint_joint_CylindricalJoint.prototype["getLocalAxis1"] = oimo_dynamics_constraint_joint_CylindricalJoint.prototype.getLocalAxis1;
			oimo_dynamics_constraint_joint_CylindricalJoint.prototype["getLocalAxis2"] = oimo_dynamics_constraint_joint_CylindricalJoint.prototype.getLocalAxis2;
			oimo_dynamics_constraint_joint_CylindricalJoint.prototype["getLocalAxis1To"] = oimo_dynamics_constraint_joint_CylindricalJoint.prototype.getLocalAxis1To;
			oimo_dynamics_constraint_joint_CylindricalJoint.prototype["getLocalAxis2To"] = oimo_dynamics_constraint_joint_CylindricalJoint.prototype.getLocalAxis2To;
			oimo_dynamics_constraint_joint_CylindricalJoint.prototype["getTranslationalSpringDamper"] = oimo_dynamics_constraint_joint_CylindricalJoint.prototype.getTranslationalSpringDamper;
			oimo_dynamics_constraint_joint_CylindricalJoint.prototype["getRotationalSpringDamper"] = oimo_dynamics_constraint_joint_CylindricalJoint.prototype.getRotationalSpringDamper;
			oimo_dynamics_constraint_joint_CylindricalJoint.prototype["getTranslationalLimitMotor"] = oimo_dynamics_constraint_joint_CylindricalJoint.prototype.getTranslationalLimitMotor;
			oimo_dynamics_constraint_joint_CylindricalJoint.prototype["getRotationalLimitMotor"] = oimo_dynamics_constraint_joint_CylindricalJoint.prototype.getRotationalLimitMotor;
			oimo_dynamics_constraint_joint_CylindricalJoint.prototype["getAngle"] = oimo_dynamics_constraint_joint_CylindricalJoint.prototype.getAngle;
			oimo_dynamics_constraint_joint_CylindricalJoint.prototype["getTranslation"] = oimo_dynamics_constraint_joint_CylindricalJoint.prototype.getTranslation;
			window["OIMO"]["JointConfig"] = oimo_dynamics_constraint_joint_JointConfig;
			window["OIMO"]["CylindricalJointConfig"] = oimo_dynamics_constraint_joint_CylindricalJointConfig;
			oimo_dynamics_constraint_joint_CylindricalJointConfig.prototype["init"] = oimo_dynamics_constraint_joint_CylindricalJointConfig.prototype.init;
			window["OIMO"]["GenericJoint"] = oimo_dynamics_constraint_joint_GenericJoint;
			oimo_dynamics_constraint_joint_GenericJoint.prototype["getAxisX"] = oimo_dynamics_constraint_joint_GenericJoint.prototype.getAxisX;
			oimo_dynamics_constraint_joint_GenericJoint.prototype["getAxisY"] = oimo_dynamics_constraint_joint_GenericJoint.prototype.getAxisY;
			oimo_dynamics_constraint_joint_GenericJoint.prototype["getAxisZ"] = oimo_dynamics_constraint_joint_GenericJoint.prototype.getAxisZ;
			oimo_dynamics_constraint_joint_GenericJoint.prototype["getTranslationalSpringDampers"] = oimo_dynamics_constraint_joint_GenericJoint.prototype.getTranslationalSpringDampers;
			oimo_dynamics_constraint_joint_GenericJoint.prototype["getRotationalSpringDampers"] = oimo_dynamics_constraint_joint_GenericJoint.prototype.getRotationalSpringDampers;
			oimo_dynamics_constraint_joint_GenericJoint.prototype["getTranslationalLimitMotors"] = oimo_dynamics_constraint_joint_GenericJoint.prototype.getTranslationalLimitMotors;
			oimo_dynamics_constraint_joint_GenericJoint.prototype["getRotationalLimitMotors"] = oimo_dynamics_constraint_joint_GenericJoint.prototype.getRotationalLimitMotors;
			oimo_dynamics_constraint_joint_GenericJoint.prototype["getAngles"] = oimo_dynamics_constraint_joint_GenericJoint.prototype.getAngles;
			oimo_dynamics_constraint_joint_GenericJoint.prototype["getTranslations"] = oimo_dynamics_constraint_joint_GenericJoint.prototype.getTranslations;
			window["OIMO"]["GenericJointConfig"] = oimo_dynamics_constraint_joint_GenericJointConfig;
			oimo_dynamics_constraint_joint_GenericJointConfig.prototype["init"] = oimo_dynamics_constraint_joint_GenericJointConfig.prototype.init;
			window["OIMO"]["JointLink"] = oimo_dynamics_constraint_joint_JointLink;
			oimo_dynamics_constraint_joint_JointLink.prototype["getContact"] = oimo_dynamics_constraint_joint_JointLink.prototype.getContact;
			oimo_dynamics_constraint_joint_JointLink.prototype["getOther"] = oimo_dynamics_constraint_joint_JointLink.prototype.getOther;
			oimo_dynamics_constraint_joint_JointLink.prototype["getPrev"] = oimo_dynamics_constraint_joint_JointLink.prototype.getPrev;
			oimo_dynamics_constraint_joint_JointLink.prototype["getNext"] = oimo_dynamics_constraint_joint_JointLink.prototype.getNext;
			window["OIMO"]["JointType"] = oimo_dynamics_constraint_joint_JointType;
			window["OIMO"]["PrismaticJoint"] = oimo_dynamics_constraint_joint_PrismaticJoint;
			oimo_dynamics_constraint_joint_PrismaticJoint.prototype["getAxis1"] = oimo_dynamics_constraint_joint_PrismaticJoint.prototype.getAxis1;
			oimo_dynamics_constraint_joint_PrismaticJoint.prototype["getAxis2"] = oimo_dynamics_constraint_joint_PrismaticJoint.prototype.getAxis2;
			oimo_dynamics_constraint_joint_PrismaticJoint.prototype["getAxis1To"] = oimo_dynamics_constraint_joint_PrismaticJoint.prototype.getAxis1To;
			oimo_dynamics_constraint_joint_PrismaticJoint.prototype["getAxis2To"] = oimo_dynamics_constraint_joint_PrismaticJoint.prototype.getAxis2To;
			oimo_dynamics_constraint_joint_PrismaticJoint.prototype["getLocalAxis1"] = oimo_dynamics_constraint_joint_PrismaticJoint.prototype.getLocalAxis1;
			oimo_dynamics_constraint_joint_PrismaticJoint.prototype["getLocalAxis2"] = oimo_dynamics_constraint_joint_PrismaticJoint.prototype.getLocalAxis2;
			oimo_dynamics_constraint_joint_PrismaticJoint.prototype["getLocalAxis1To"] = oimo_dynamics_constraint_joint_PrismaticJoint.prototype.getLocalAxis1To;
			oimo_dynamics_constraint_joint_PrismaticJoint.prototype["getLocalAxis2To"] = oimo_dynamics_constraint_joint_PrismaticJoint.prototype.getLocalAxis2To;
			oimo_dynamics_constraint_joint_PrismaticJoint.prototype["getSpringDamper"] = oimo_dynamics_constraint_joint_PrismaticJoint.prototype.getSpringDamper;
			oimo_dynamics_constraint_joint_PrismaticJoint.prototype["getLimitMotor"] = oimo_dynamics_constraint_joint_PrismaticJoint.prototype.getLimitMotor;
			oimo_dynamics_constraint_joint_PrismaticJoint.prototype["getTranslation"] = oimo_dynamics_constraint_joint_PrismaticJoint.prototype.getTranslation;
			window["OIMO"]["PrismaticJointConfig"] = oimo_dynamics_constraint_joint_PrismaticJointConfig;
			oimo_dynamics_constraint_joint_PrismaticJointConfig.prototype["init"] = oimo_dynamics_constraint_joint_PrismaticJointConfig.prototype.init;
			window["OIMO"]["RagdollJoint"] = oimo_dynamics_constraint_joint_RagdollJoint;
			oimo_dynamics_constraint_joint_RagdollJoint.prototype["getAxis1"] = oimo_dynamics_constraint_joint_RagdollJoint.prototype.getAxis1;
			oimo_dynamics_constraint_joint_RagdollJoint.prototype["getAxis2"] = oimo_dynamics_constraint_joint_RagdollJoint.prototype.getAxis2;
			oimo_dynamics_constraint_joint_RagdollJoint.prototype["getAxis1To"] = oimo_dynamics_constraint_joint_RagdollJoint.prototype.getAxis1To;
			oimo_dynamics_constraint_joint_RagdollJoint.prototype["getAxis2To"] = oimo_dynamics_constraint_joint_RagdollJoint.prototype.getAxis2To;
			oimo_dynamics_constraint_joint_RagdollJoint.prototype["getLocalAxis1"] = oimo_dynamics_constraint_joint_RagdollJoint.prototype.getLocalAxis1;
			oimo_dynamics_constraint_joint_RagdollJoint.prototype["getLocalAxis2"] = oimo_dynamics_constraint_joint_RagdollJoint.prototype.getLocalAxis2;
			oimo_dynamics_constraint_joint_RagdollJoint.prototype["getLocalAxis1To"] = oimo_dynamics_constraint_joint_RagdollJoint.prototype.getLocalAxis1To;
			oimo_dynamics_constraint_joint_RagdollJoint.prototype["getLocalAxis2To"] = oimo_dynamics_constraint_joint_RagdollJoint.prototype.getLocalAxis2To;
			oimo_dynamics_constraint_joint_RagdollJoint.prototype["getTwistSpringDamper"] = oimo_dynamics_constraint_joint_RagdollJoint.prototype.getTwistSpringDamper;
			oimo_dynamics_constraint_joint_RagdollJoint.prototype["getTwistLimitMotor"] = oimo_dynamics_constraint_joint_RagdollJoint.prototype.getTwistLimitMotor;
			oimo_dynamics_constraint_joint_RagdollJoint.prototype["getSwingSpringDamper"] = oimo_dynamics_constraint_joint_RagdollJoint.prototype.getSwingSpringDamper;
			oimo_dynamics_constraint_joint_RagdollJoint.prototype["getSwingAxis"] = oimo_dynamics_constraint_joint_RagdollJoint.prototype.getSwingAxis;
			oimo_dynamics_constraint_joint_RagdollJoint.prototype["getSwingAxisTo"] = oimo_dynamics_constraint_joint_RagdollJoint.prototype.getSwingAxisTo;
			oimo_dynamics_constraint_joint_RagdollJoint.prototype["getSwingAngle"] = oimo_dynamics_constraint_joint_RagdollJoint.prototype.getSwingAngle;
			oimo_dynamics_constraint_joint_RagdollJoint.prototype["getTwistAngle"] = oimo_dynamics_constraint_joint_RagdollJoint.prototype.getTwistAngle;
			window["OIMO"]["RagdollJointConfig"] = oimo_dynamics_constraint_joint_RagdollJointConfig;
			oimo_dynamics_constraint_joint_RagdollJointConfig.prototype["init"] = oimo_dynamics_constraint_joint_RagdollJointConfig.prototype.init;
			window["OIMO"]["RevoluteJoint"] = oimo_dynamics_constraint_joint_RevoluteJoint;
			oimo_dynamics_constraint_joint_RevoluteJoint.prototype["getAxis1"] = oimo_dynamics_constraint_joint_RevoluteJoint.prototype.getAxis1;
			oimo_dynamics_constraint_joint_RevoluteJoint.prototype["getAxis2"] = oimo_dynamics_constraint_joint_RevoluteJoint.prototype.getAxis2;
			oimo_dynamics_constraint_joint_RevoluteJoint.prototype["getAxis1To"] = oimo_dynamics_constraint_joint_RevoluteJoint.prototype.getAxis1To;
			oimo_dynamics_constraint_joint_RevoluteJoint.prototype["getAxis2To"] = oimo_dynamics_constraint_joint_RevoluteJoint.prototype.getAxis2To;
			oimo_dynamics_constraint_joint_RevoluteJoint.prototype["getLocalAxis1"] = oimo_dynamics_constraint_joint_RevoluteJoint.prototype.getLocalAxis1;
			oimo_dynamics_constraint_joint_RevoluteJoint.prototype["getLocalAxis2"] = oimo_dynamics_constraint_joint_RevoluteJoint.prototype.getLocalAxis2;
			oimo_dynamics_constraint_joint_RevoluteJoint.prototype["getLocalAxis1To"] = oimo_dynamics_constraint_joint_RevoluteJoint.prototype.getLocalAxis1To;
			oimo_dynamics_constraint_joint_RevoluteJoint.prototype["getLocalAxis2To"] = oimo_dynamics_constraint_joint_RevoluteJoint.prototype.getLocalAxis2To;
			oimo_dynamics_constraint_joint_RevoluteJoint.prototype["getSpringDamper"] = oimo_dynamics_constraint_joint_RevoluteJoint.prototype.getSpringDamper;
			oimo_dynamics_constraint_joint_RevoluteJoint.prototype["getLimitMotor"] = oimo_dynamics_constraint_joint_RevoluteJoint.prototype.getLimitMotor;
			oimo_dynamics_constraint_joint_RevoluteJoint.prototype["getAngle"] = oimo_dynamics_constraint_joint_RevoluteJoint.prototype.getAngle;
			window["OIMO"]["RevoluteJointConfig"] = oimo_dynamics_constraint_joint_RevoluteJointConfig;
			oimo_dynamics_constraint_joint_RevoluteJointConfig.prototype["init"] = oimo_dynamics_constraint_joint_RevoluteJointConfig.prototype.init;
			window["OIMO"]["RotationalLimitMotor"] = oimo_dynamics_constraint_joint_RotationalLimitMotor;
			oimo_dynamics_constraint_joint_RotationalLimitMotor.prototype["setLimits"] = oimo_dynamics_constraint_joint_RotationalLimitMotor.prototype.setLimits;
			oimo_dynamics_constraint_joint_RotationalLimitMotor.prototype["setMotor"] = oimo_dynamics_constraint_joint_RotationalLimitMotor.prototype.setMotor;
			oimo_dynamics_constraint_joint_RotationalLimitMotor.prototype["clone"] = oimo_dynamics_constraint_joint_RotationalLimitMotor.prototype.clone;
			window["OIMO"]["SphericalJoint"] = oimo_dynamics_constraint_joint_SphericalJoint;
			oimo_dynamics_constraint_joint_SphericalJoint.prototype["getSpringDamper"] = oimo_dynamics_constraint_joint_SphericalJoint.prototype.getSpringDamper;
			window["OIMO"]["SphericalJointConfig"] = oimo_dynamics_constraint_joint_SphericalJointConfig;
			oimo_dynamics_constraint_joint_SphericalJointConfig.prototype["init"] = oimo_dynamics_constraint_joint_SphericalJointConfig.prototype.init;
			window["OIMO"]["SpringDamper"] = oimo_dynamics_constraint_joint_SpringDamper;
			oimo_dynamics_constraint_joint_SpringDamper.prototype["setSpring"] = oimo_dynamics_constraint_joint_SpringDamper.prototype.setSpring;
			oimo_dynamics_constraint_joint_SpringDamper.prototype["setSymplecticEuler"] = oimo_dynamics_constraint_joint_SpringDamper.prototype.setSymplecticEuler;
			oimo_dynamics_constraint_joint_SpringDamper.prototype["clone"] = oimo_dynamics_constraint_joint_SpringDamper.prototype.clone;
			window["OIMO"]["TranslationalLimitMotor"] = oimo_dynamics_constraint_joint_TranslationalLimitMotor;
			oimo_dynamics_constraint_joint_TranslationalLimitMotor.prototype["setLimits"] = oimo_dynamics_constraint_joint_TranslationalLimitMotor.prototype.setLimits;
			oimo_dynamics_constraint_joint_TranslationalLimitMotor.prototype["setMotor"] = oimo_dynamics_constraint_joint_TranslationalLimitMotor.prototype.setMotor;
			oimo_dynamics_constraint_joint_TranslationalLimitMotor.prototype["clone"] = oimo_dynamics_constraint_joint_TranslationalLimitMotor.prototype.clone;
			window["OIMO"]["UniversalJoint"] = oimo_dynamics_constraint_joint_UniversalJoint;
			oimo_dynamics_constraint_joint_UniversalJoint.prototype["getAxis1"] = oimo_dynamics_constraint_joint_UniversalJoint.prototype.getAxis1;
			oimo_dynamics_constraint_joint_UniversalJoint.prototype["getAxis2"] = oimo_dynamics_constraint_joint_UniversalJoint.prototype.getAxis2;
			oimo_dynamics_constraint_joint_UniversalJoint.prototype["getAxis1To"] = oimo_dynamics_constraint_joint_UniversalJoint.prototype.getAxis1To;
			oimo_dynamics_constraint_joint_UniversalJoint.prototype["getAxis2To"] = oimo_dynamics_constraint_joint_UniversalJoint.prototype.getAxis2To;
			oimo_dynamics_constraint_joint_UniversalJoint.prototype["getLocalAxis1"] = oimo_dynamics_constraint_joint_UniversalJoint.prototype.getLocalAxis1;
			oimo_dynamics_constraint_joint_UniversalJoint.prototype["getLocalAxis2"] = oimo_dynamics_constraint_joint_UniversalJoint.prototype.getLocalAxis2;
			oimo_dynamics_constraint_joint_UniversalJoint.prototype["getLocalAxis1To"] = oimo_dynamics_constraint_joint_UniversalJoint.prototype.getLocalAxis1To;
			oimo_dynamics_constraint_joint_UniversalJoint.prototype["getLocalAxis2To"] = oimo_dynamics_constraint_joint_UniversalJoint.prototype.getLocalAxis2To;
			oimo_dynamics_constraint_joint_UniversalJoint.prototype["getSpringDamper1"] = oimo_dynamics_constraint_joint_UniversalJoint.prototype.getSpringDamper1;
			oimo_dynamics_constraint_joint_UniversalJoint.prototype["getSpringDamper2"] = oimo_dynamics_constraint_joint_UniversalJoint.prototype.getSpringDamper2;
			oimo_dynamics_constraint_joint_UniversalJoint.prototype["getLimitMotor1"] = oimo_dynamics_constraint_joint_UniversalJoint.prototype.getLimitMotor1;
			oimo_dynamics_constraint_joint_UniversalJoint.prototype["getLimitMotor2"] = oimo_dynamics_constraint_joint_UniversalJoint.prototype.getLimitMotor2;
			oimo_dynamics_constraint_joint_UniversalJoint.prototype["getAngle1"] = oimo_dynamics_constraint_joint_UniversalJoint.prototype.getAngle1;
			oimo_dynamics_constraint_joint_UniversalJoint.prototype["getAngle2"] = oimo_dynamics_constraint_joint_UniversalJoint.prototype.getAngle2;
			window["OIMO"]["UniversalJointConfig"] = oimo_dynamics_constraint_joint_UniversalJointConfig;
			oimo_dynamics_constraint_joint_UniversalJointConfig.prototype["init"] = oimo_dynamics_constraint_joint_UniversalJointConfig.prototype.init;
			window["OIMO"]["ConstraintSolverType"] = oimo_dynamics_constraint_solver_ConstraintSolverType;
			window["OIMO"]["DirectJointConstraintSolver"] = oimo_dynamics_constraint_solver_direct_DirectJointConstraintSolver;
			oimo_dynamics_constraint_solver_direct_DirectJointConstraintSolver.prototype["preSolveVelocity"] = oimo_dynamics_constraint_solver_direct_DirectJointConstraintSolver.prototype.preSolveVelocity;
			oimo_dynamics_constraint_solver_direct_DirectJointConstraintSolver.prototype["warmStart"] = oimo_dynamics_constraint_solver_direct_DirectJointConstraintSolver.prototype.warmStart;
			oimo_dynamics_constraint_solver_direct_DirectJointConstraintSolver.prototype["solveVelocity"] = oimo_dynamics_constraint_solver_direct_DirectJointConstraintSolver.prototype.solveVelocity;
			oimo_dynamics_constraint_solver_direct_DirectJointConstraintSolver.prototype["postSolveVelocity"] = oimo_dynamics_constraint_solver_direct_DirectJointConstraintSolver.prototype.postSolveVelocity;
			oimo_dynamics_constraint_solver_direct_DirectJointConstraintSolver.prototype["preSolvePosition"] = oimo_dynamics_constraint_solver_direct_DirectJointConstraintSolver.prototype.preSolvePosition;
			oimo_dynamics_constraint_solver_direct_DirectJointConstraintSolver.prototype["solvePositionSplitImpulse"] = oimo_dynamics_constraint_solver_direct_DirectJointConstraintSolver.prototype.solvePositionSplitImpulse;
			oimo_dynamics_constraint_solver_direct_DirectJointConstraintSolver.prototype["solvePositionNgs"] = oimo_dynamics_constraint_solver_direct_DirectJointConstraintSolver.prototype.solvePositionNgs;
			oimo_dynamics_constraint_solver_direct_DirectJointConstraintSolver.prototype["postSolve"] = oimo_dynamics_constraint_solver_direct_DirectJointConstraintSolver.prototype.postSolve;
			window["OIMO"]["PgsContactConstraintSolver"] = oimo_dynamics_constraint_solver_pgs_PgsContactConstraintSolver;
			oimo_dynamics_constraint_solver_pgs_PgsContactConstraintSolver.prototype["preSolveVelocity"] = oimo_dynamics_constraint_solver_pgs_PgsContactConstraintSolver.prototype.preSolveVelocity;
			oimo_dynamics_constraint_solver_pgs_PgsContactConstraintSolver.prototype["warmStart"] = oimo_dynamics_constraint_solver_pgs_PgsContactConstraintSolver.prototype.warmStart;
			oimo_dynamics_constraint_solver_pgs_PgsContactConstraintSolver.prototype["solveVelocity"] = oimo_dynamics_constraint_solver_pgs_PgsContactConstraintSolver.prototype.solveVelocity;
			oimo_dynamics_constraint_solver_pgs_PgsContactConstraintSolver.prototype["preSolvePosition"] = oimo_dynamics_constraint_solver_pgs_PgsContactConstraintSolver.prototype.preSolvePosition;
			oimo_dynamics_constraint_solver_pgs_PgsContactConstraintSolver.prototype["solvePositionSplitImpulse"] = oimo_dynamics_constraint_solver_pgs_PgsContactConstraintSolver.prototype.solvePositionSplitImpulse;
			oimo_dynamics_constraint_solver_pgs_PgsContactConstraintSolver.prototype["solvePositionNgs"] = oimo_dynamics_constraint_solver_pgs_PgsContactConstraintSolver.prototype.solvePositionNgs;
			oimo_dynamics_constraint_solver_pgs_PgsContactConstraintSolver.prototype["postSolve"] = oimo_dynamics_constraint_solver_pgs_PgsContactConstraintSolver.prototype.postSolve;
			window["OIMO"]["PgsJointConstraintSolver"] = oimo_dynamics_constraint_solver_pgs_PgsJointConstraintSolver;
			oimo_dynamics_constraint_solver_pgs_PgsJointConstraintSolver.prototype["preSolveVelocity"] = oimo_dynamics_constraint_solver_pgs_PgsJointConstraintSolver.prototype.preSolveVelocity;
			oimo_dynamics_constraint_solver_pgs_PgsJointConstraintSolver.prototype["warmStart"] = oimo_dynamics_constraint_solver_pgs_PgsJointConstraintSolver.prototype.warmStart;
			oimo_dynamics_constraint_solver_pgs_PgsJointConstraintSolver.prototype["solveVelocity"] = oimo_dynamics_constraint_solver_pgs_PgsJointConstraintSolver.prototype.solveVelocity;
			oimo_dynamics_constraint_solver_pgs_PgsJointConstraintSolver.prototype["postSolveVelocity"] = oimo_dynamics_constraint_solver_pgs_PgsJointConstraintSolver.prototype.postSolveVelocity;
			oimo_dynamics_constraint_solver_pgs_PgsJointConstraintSolver.prototype["preSolvePosition"] = oimo_dynamics_constraint_solver_pgs_PgsJointConstraintSolver.prototype.preSolvePosition;
			oimo_dynamics_constraint_solver_pgs_PgsJointConstraintSolver.prototype["solvePositionSplitImpulse"] = oimo_dynamics_constraint_solver_pgs_PgsJointConstraintSolver.prototype.solvePositionSplitImpulse;
			oimo_dynamics_constraint_solver_pgs_PgsJointConstraintSolver.prototype["solvePositionNgs"] = oimo_dynamics_constraint_solver_pgs_PgsJointConstraintSolver.prototype.solvePositionNgs;
			oimo_dynamics_constraint_solver_pgs_PgsJointConstraintSolver.prototype["postSolve"] = oimo_dynamics_constraint_solver_pgs_PgsJointConstraintSolver.prototype.postSolve;
			window["OIMO"]["MassData"] = oimo_dynamics_rigidbody_MassData;
			window["OIMO"]["RigidBody"] = oimo_dynamics_rigidbody_RigidBody;
			oimo_dynamics_rigidbody_RigidBody.prototype["getPosition"] = oimo_dynamics_rigidbody_RigidBody.prototype.getPosition;
			oimo_dynamics_rigidbody_RigidBody.prototype["getPositionTo"] = oimo_dynamics_rigidbody_RigidBody.prototype.getPositionTo;
			oimo_dynamics_rigidbody_RigidBody.prototype["setPosition"] = oimo_dynamics_rigidbody_RigidBody.prototype.setPosition;
			oimo_dynamics_rigidbody_RigidBody.prototype["translate"] = oimo_dynamics_rigidbody_RigidBody.prototype.translate;
			oimo_dynamics_rigidbody_RigidBody.prototype["getRotation"] = oimo_dynamics_rigidbody_RigidBody.prototype.getRotation;
			oimo_dynamics_rigidbody_RigidBody.prototype["getRotationTo"] = oimo_dynamics_rigidbody_RigidBody.prototype.getRotationTo;
			oimo_dynamics_rigidbody_RigidBody.prototype["setRotation"] = oimo_dynamics_rigidbody_RigidBody.prototype.setRotation;
			oimo_dynamics_rigidbody_RigidBody.prototype["setRotationXyz"] = oimo_dynamics_rigidbody_RigidBody.prototype.setRotationXyz;
			oimo_dynamics_rigidbody_RigidBody.prototype["rotate"] = oimo_dynamics_rigidbody_RigidBody.prototype.rotate;
			oimo_dynamics_rigidbody_RigidBody.prototype["rotateXyz"] = oimo_dynamics_rigidbody_RigidBody.prototype.rotateXyz;
			oimo_dynamics_rigidbody_RigidBody.prototype["getOrientation"] = oimo_dynamics_rigidbody_RigidBody.prototype.getOrientation;
			oimo_dynamics_rigidbody_RigidBody.prototype["getOrientationTo"] = oimo_dynamics_rigidbody_RigidBody.prototype.getOrientationTo;
			oimo_dynamics_rigidbody_RigidBody.prototype["setOrientation"] = oimo_dynamics_rigidbody_RigidBody.prototype.setOrientation;
			oimo_dynamics_rigidbody_RigidBody.prototype["getTransform"] = oimo_dynamics_rigidbody_RigidBody.prototype.getTransform;
			oimo_dynamics_rigidbody_RigidBody.prototype["getTransformTo"] = oimo_dynamics_rigidbody_RigidBody.prototype.getTransformTo;
			oimo_dynamics_rigidbody_RigidBody.prototype["setTransform"] = oimo_dynamics_rigidbody_RigidBody.prototype.setTransform;
			oimo_dynamics_rigidbody_RigidBody.prototype["getMass"] = oimo_dynamics_rigidbody_RigidBody.prototype.getMass;
			oimo_dynamics_rigidbody_RigidBody.prototype["getLocalInertia"] = oimo_dynamics_rigidbody_RigidBody.prototype.getLocalInertia;
			oimo_dynamics_rigidbody_RigidBody.prototype["getLocalInertiaTo"] = oimo_dynamics_rigidbody_RigidBody.prototype.getLocalInertiaTo;
			oimo_dynamics_rigidbody_RigidBody.prototype["getMassData"] = oimo_dynamics_rigidbody_RigidBody.prototype.getMassData;
			oimo_dynamics_rigidbody_RigidBody.prototype["getMassDataTo"] = oimo_dynamics_rigidbody_RigidBody.prototype.getMassDataTo;
			oimo_dynamics_rigidbody_RigidBody.prototype["setMassData"] = oimo_dynamics_rigidbody_RigidBody.prototype.setMassData;
			oimo_dynamics_rigidbody_RigidBody.prototype["getRotationFactor"] = oimo_dynamics_rigidbody_RigidBody.prototype.getRotationFactor;
			oimo_dynamics_rigidbody_RigidBody.prototype["setRotationFactor"] = oimo_dynamics_rigidbody_RigidBody.prototype.setRotationFactor;
			oimo_dynamics_rigidbody_RigidBody.prototype["getLinearVelocity"] = oimo_dynamics_rigidbody_RigidBody.prototype.getLinearVelocity;
			oimo_dynamics_rigidbody_RigidBody.prototype["getLinearVelocityTo"] = oimo_dynamics_rigidbody_RigidBody.prototype.getLinearVelocityTo;
			oimo_dynamics_rigidbody_RigidBody.prototype["setLinearVelocity"] = oimo_dynamics_rigidbody_RigidBody.prototype.setLinearVelocity;
			oimo_dynamics_rigidbody_RigidBody.prototype["getAngularVelocity"] = oimo_dynamics_rigidbody_RigidBody.prototype.getAngularVelocity;
			oimo_dynamics_rigidbody_RigidBody.prototype["getAngularVelocityTo"] = oimo_dynamics_rigidbody_RigidBody.prototype.getAngularVelocityTo;
			oimo_dynamics_rigidbody_RigidBody.prototype["setAngularVelocity"] = oimo_dynamics_rigidbody_RigidBody.prototype.setAngularVelocity;
			oimo_dynamics_rigidbody_RigidBody.prototype["addLinearVelocity"] = oimo_dynamics_rigidbody_RigidBody.prototype.addLinearVelocity;
			oimo_dynamics_rigidbody_RigidBody.prototype["addAngularVelocity"] = oimo_dynamics_rigidbody_RigidBody.prototype.addAngularVelocity;
			oimo_dynamics_rigidbody_RigidBody.prototype["applyImpulse"] = oimo_dynamics_rigidbody_RigidBody.prototype.applyImpulse;
			oimo_dynamics_rigidbody_RigidBody.prototype["applyLinearImpulse"] = oimo_dynamics_rigidbody_RigidBody.prototype.applyLinearImpulse;
			oimo_dynamics_rigidbody_RigidBody.prototype["applyAngularImpulse"] = oimo_dynamics_rigidbody_RigidBody.prototype.applyAngularImpulse;
			oimo_dynamics_rigidbody_RigidBody.prototype["applyForce"] = oimo_dynamics_rigidbody_RigidBody.prototype.applyForce;
			oimo_dynamics_rigidbody_RigidBody.prototype["applyForceToCenter"] = oimo_dynamics_rigidbody_RigidBody.prototype.applyForceToCenter;
			oimo_dynamics_rigidbody_RigidBody.prototype["applyTorque"] = oimo_dynamics_rigidbody_RigidBody.prototype.applyTorque;
			oimo_dynamics_rigidbody_RigidBody.prototype["getLinearContactImpulse"] = oimo_dynamics_rigidbody_RigidBody.prototype.getLinearContactImpulse;
			oimo_dynamics_rigidbody_RigidBody.prototype["getLinearContactImpulseTo"] = oimo_dynamics_rigidbody_RigidBody.prototype.getLinearContactImpulseTo;
			oimo_dynamics_rigidbody_RigidBody.prototype["getAngularContactImpulse"] = oimo_dynamics_rigidbody_RigidBody.prototype.getAngularContactImpulse;
			oimo_dynamics_rigidbody_RigidBody.prototype["getAngularContactImpulseTo"] = oimo_dynamics_rigidbody_RigidBody.prototype.getAngularContactImpulseTo;
			oimo_dynamics_rigidbody_RigidBody.prototype["getGravityScale"] = oimo_dynamics_rigidbody_RigidBody.prototype.getGravityScale;
			oimo_dynamics_rigidbody_RigidBody.prototype["setGravityScale"] = oimo_dynamics_rigidbody_RigidBody.prototype.setGravityScale;
			oimo_dynamics_rigidbody_RigidBody.prototype["getLocalPoint"] = oimo_dynamics_rigidbody_RigidBody.prototype.getLocalPoint;
			oimo_dynamics_rigidbody_RigidBody.prototype["getLocalPointTo"] = oimo_dynamics_rigidbody_RigidBody.prototype.getLocalPointTo;
			oimo_dynamics_rigidbody_RigidBody.prototype["getLocalVector"] = oimo_dynamics_rigidbody_RigidBody.prototype.getLocalVector;
			oimo_dynamics_rigidbody_RigidBody.prototype["getLocalVectorTo"] = oimo_dynamics_rigidbody_RigidBody.prototype.getLocalVectorTo;
			oimo_dynamics_rigidbody_RigidBody.prototype["getWorldPoint"] = oimo_dynamics_rigidbody_RigidBody.prototype.getWorldPoint;
			oimo_dynamics_rigidbody_RigidBody.prototype["getWorldPointTo"] = oimo_dynamics_rigidbody_RigidBody.prototype.getWorldPointTo;
			oimo_dynamics_rigidbody_RigidBody.prototype["getWorldVector"] = oimo_dynamics_rigidbody_RigidBody.prototype.getWorldVector;
			oimo_dynamics_rigidbody_RigidBody.prototype["getWorldVectorTo"] = oimo_dynamics_rigidbody_RigidBody.prototype.getWorldVectorTo;
			oimo_dynamics_rigidbody_RigidBody.prototype["getNumShapes"] = oimo_dynamics_rigidbody_RigidBody.prototype.getNumShapes;
			oimo_dynamics_rigidbody_RigidBody.prototype["getShapeList"] = oimo_dynamics_rigidbody_RigidBody.prototype.getShapeList;
			oimo_dynamics_rigidbody_RigidBody.prototype["getNumContactLinks"] = oimo_dynamics_rigidbody_RigidBody.prototype.getNumContactLinks;
			oimo_dynamics_rigidbody_RigidBody.prototype["getContactLinkList"] = oimo_dynamics_rigidbody_RigidBody.prototype.getContactLinkList;
			oimo_dynamics_rigidbody_RigidBody.prototype["getNumJointLinks"] = oimo_dynamics_rigidbody_RigidBody.prototype.getNumJointLinks;
			oimo_dynamics_rigidbody_RigidBody.prototype["getJointLinkList"] = oimo_dynamics_rigidbody_RigidBody.prototype.getJointLinkList;
			oimo_dynamics_rigidbody_RigidBody.prototype["addShape"] = oimo_dynamics_rigidbody_RigidBody.prototype.addShape;
			oimo_dynamics_rigidbody_RigidBody.prototype["removeShape"] = oimo_dynamics_rigidbody_RigidBody.prototype.removeShape;
			oimo_dynamics_rigidbody_RigidBody.prototype["getType"] = oimo_dynamics_rigidbody_RigidBody.prototype.getType;
			oimo_dynamics_rigidbody_RigidBody.prototype["setType"] = oimo_dynamics_rigidbody_RigidBody.prototype.setType;
			oimo_dynamics_rigidbody_RigidBody.prototype["wakeUp"] = oimo_dynamics_rigidbody_RigidBody.prototype.wakeUp;
			oimo_dynamics_rigidbody_RigidBody.prototype["sleep"] = oimo_dynamics_rigidbody_RigidBody.prototype.sleep;
			oimo_dynamics_rigidbody_RigidBody.prototype["isSleeping"] = oimo_dynamics_rigidbody_RigidBody.prototype.isSleeping;
			oimo_dynamics_rigidbody_RigidBody.prototype["getSleepTime"] = oimo_dynamics_rigidbody_RigidBody.prototype.getSleepTime;
			oimo_dynamics_rigidbody_RigidBody.prototype["setAutoSleep"] = oimo_dynamics_rigidbody_RigidBody.prototype.setAutoSleep;
			oimo_dynamics_rigidbody_RigidBody.prototype["getLinearDamping"] = oimo_dynamics_rigidbody_RigidBody.prototype.getLinearDamping;
			oimo_dynamics_rigidbody_RigidBody.prototype["setLinearDamping"] = oimo_dynamics_rigidbody_RigidBody.prototype.setLinearDamping;
			oimo_dynamics_rigidbody_RigidBody.prototype["getAngularDamping"] = oimo_dynamics_rigidbody_RigidBody.prototype.getAngularDamping;
			oimo_dynamics_rigidbody_RigidBody.prototype["setAngularDamping"] = oimo_dynamics_rigidbody_RigidBody.prototype.setAngularDamping;
			oimo_dynamics_rigidbody_RigidBody.prototype["getPrev"] = oimo_dynamics_rigidbody_RigidBody.prototype.getPrev;
			oimo_dynamics_rigidbody_RigidBody.prototype["getNext"] = oimo_dynamics_rigidbody_RigidBody.prototype.getNext;
			window["OIMO"]["RigidBodyConfig"] = oimo_dynamics_rigidbody_RigidBodyConfig;
			window["OIMO"]["RigidBodyType"] = oimo_dynamics_rigidbody_RigidBodyType;
			window["OIMO"]["Shape"] = oimo_dynamics_rigidbody_Shape;
			oimo_dynamics_rigidbody_Shape.prototype["getFriction"] = oimo_dynamics_rigidbody_Shape.prototype.getFriction;
			oimo_dynamics_rigidbody_Shape.prototype["setFriction"] = oimo_dynamics_rigidbody_Shape.prototype.setFriction;
			oimo_dynamics_rigidbody_Shape.prototype["getRestitution"] = oimo_dynamics_rigidbody_Shape.prototype.getRestitution;
			oimo_dynamics_rigidbody_Shape.prototype["setRestitution"] = oimo_dynamics_rigidbody_Shape.prototype.setRestitution;
			oimo_dynamics_rigidbody_Shape.prototype["getLocalTransform"] = oimo_dynamics_rigidbody_Shape.prototype.getLocalTransform;
			oimo_dynamics_rigidbody_Shape.prototype["getLocalTransformTo"] = oimo_dynamics_rigidbody_Shape.prototype.getLocalTransformTo;
			oimo_dynamics_rigidbody_Shape.prototype["getTransform"] = oimo_dynamics_rigidbody_Shape.prototype.getTransform;
			oimo_dynamics_rigidbody_Shape.prototype["getTransformTo"] = oimo_dynamics_rigidbody_Shape.prototype.getTransformTo;
			oimo_dynamics_rigidbody_Shape.prototype["setLocalTransform"] = oimo_dynamics_rigidbody_Shape.prototype.setLocalTransform;
			oimo_dynamics_rigidbody_Shape.prototype["getDensity"] = oimo_dynamics_rigidbody_Shape.prototype.getDensity;
			oimo_dynamics_rigidbody_Shape.prototype["setDensity"] = oimo_dynamics_rigidbody_Shape.prototype.setDensity;
			oimo_dynamics_rigidbody_Shape.prototype["getAabb"] = oimo_dynamics_rigidbody_Shape.prototype.getAabb;
			oimo_dynamics_rigidbody_Shape.prototype["getAabbTo"] = oimo_dynamics_rigidbody_Shape.prototype.getAabbTo;
			oimo_dynamics_rigidbody_Shape.prototype["getGeometry"] = oimo_dynamics_rigidbody_Shape.prototype.getGeometry;
			oimo_dynamics_rigidbody_Shape.prototype["getRigidBody"] = oimo_dynamics_rigidbody_Shape.prototype.getRigidBody;
			oimo_dynamics_rigidbody_Shape.prototype["getCollisionGroup"] = oimo_dynamics_rigidbody_Shape.prototype.getCollisionGroup;
			oimo_dynamics_rigidbody_Shape.prototype["setCollisionGroup"] = oimo_dynamics_rigidbody_Shape.prototype.setCollisionGroup;
			oimo_dynamics_rigidbody_Shape.prototype["getCollisionMask"] = oimo_dynamics_rigidbody_Shape.prototype.getCollisionMask;
			oimo_dynamics_rigidbody_Shape.prototype["setCollisionMask"] = oimo_dynamics_rigidbody_Shape.prototype.setCollisionMask;
			oimo_dynamics_rigidbody_Shape.prototype["getContactCallback"] = oimo_dynamics_rigidbody_Shape.prototype.getContactCallback;
			oimo_dynamics_rigidbody_Shape.prototype["setContactCallback"] = oimo_dynamics_rigidbody_Shape.prototype.setContactCallback;
			oimo_dynamics_rigidbody_Shape.prototype["getPrev"] = oimo_dynamics_rigidbody_Shape.prototype.getPrev;
			oimo_dynamics_rigidbody_Shape.prototype["getNext"] = oimo_dynamics_rigidbody_Shape.prototype.getNext;
			window["OIMO"]["ShapeConfig"] = oimo_dynamics_rigidbody_ShapeConfig;
		');
	}
}
